package com.ay.smartpark.sdk.controller;//package com.ay.sdkclient.sdk.controller;
//
//import com.ay.sdkclient.sdk.common.utils.DocWriter;
//import com.wisdomregulation.data.entitybase.Base_Entity;
//import com.wisdomregulation.data.entitybook2017.Entity_Book_2017_2;
//import com.wisdomregulation.pdflink.IPdfBack;
//import com.wisdomregulation.shark.PdfFactoryHZ;
//import org.springframework.web.bind.annotation.RequestMapping;
//import org.springframework.web.bind.annotation.RequestParam;
//import org.springframework.web.bind.annotation.RestController;
//
//import javax.servlet.http.HttpServletRequest;
//import javax.servlet.http.HttpServletResponse;
//import java.io.ByteArrayOutputStream;
//import java.io.DataOutput;
//import java.io.DataOutputStream;
//import java.util.HashMap;
//import java.util.Map;
//
//@RestController
//@RequestMapping("/document")
//public class DocumentController {
//
//    @RequestMapping("/wordTest")
//    public void wordTest(HttpServletResponse response, @RequestParam Map<String, String> paramMap) {
//        Base_Entity bookentity = new Entity_Book_2017_2();//统一一个打印实体
//        bookentity.put("安监检记", "安监检记");
//        bookentity.put("字", "字");
//        bookentity.put("号", "号");
//        bookentity.put("被检查单位", "被检查单位");
//        bookentity.put("单位地址", "单位地址");
//        bookentity.put("单位法定代表人或负责人", "单位法定代表人或负责人");
//        bookentity.put("代表人职务", "代表人职务");
//        bookentity.put("代表人联系电话", "代表人联系电话");
//        bookentity.put("检查场所", "检查场所");
//        bookentity.put("检查时间开始", "2019-05-01 13:02"); //日期格式都必须为yyyy-MM-dd HH:mm格式
//        bookentity.put("检查时间结束", "2019-05-03 13:02");
//        bookentity.put("所属安全生产监督管理局", "所属安全生产监督管理局");
//        bookentity.put("执法人员姓名1", "执法人员姓名1" + ",");
//        bookentity.put("执法人员姓名2", "执法人员姓名2");
//        bookentity.put("执法人员证件号1", "执法人员证件号1" + ",");
//        bookentity.put("执法人员证件号2", "执法人员证件号2");
//        bookentity.put("检查情况", "检查情况");
//        bookentity.put("检查人员签名1", "检查人员签名1");
//        bookentity.put("检查人员签名2", "检查人员签名2");
//        bookentity.put("被检查单位现场负责人签名", "被检查单位现场负责人签名");
//        bookentity.put("出表日期", "2019-05-04 15:02");
//        bookentity.put("页数", "1");
//        bookentity.put("页码", "1");
//        String templateName = "现场检查记录";
//        DocWriter.writer(bookentity, response, templateName);
//    }
//
//    @RequestMapping("/pdfTest")
//    public void pdfTest(HttpServletResponse response, @RequestParam Map<String, String> paramMap) {
//        response.setContentType("application/pdf");
//        final ByteArrayOutputStream buffer = new ByteArrayOutputStream();
//        Base_Entity bookentity = new Entity_Book_2017_2();//统一一个打印实体
//        bookentity.put("安监检记", paramMap.get("pcode"));
//        bookentity.put("字", paramMap.get("ycode"));
//        bookentity.put("号", paramMap.get("ncode"));
//        bookentity.put("被检查单位", paramMap.get("bjcdw"));
//        bookentity.put("单位地址", paramMap.get("dz"));
//        bookentity.put("单位法定代表人或负责人", paramMap.get("fzr"));
//        bookentity.put("代表人职务", paramMap.get("zw"));
//        bookentity.put("代表人联系电话", paramMap.get("lxdh"));
//        bookentity.put("检查场所", paramMap.get("jccs"));
//        bookentity.put("检查时间开始", paramMap.get("jcsjc"));
//        bookentity.put("检查时间结束", paramMap.get("jcsjm"));
//        bookentity.put("所属安全生产监督管理局", paramMap.get("glj"));
//        bookentity.put("执法人员姓名1", paramMap.get("zf1") + ",");
//        bookentity.put("执法人员姓名2", paramMap.get("zf2"));
//        bookentity.put("执法人员证件号1", paramMap.get("zfc1") + ",");
//        bookentity.put("执法人员证件号2", paramMap.get("zfc2"));
//        bookentity.put("检查情况", paramMap.get("jcqk"));
//        bookentity.put("检查人员签名1", "");
//        bookentity.put("检查人员签名2", "");
//        bookentity.put("被检查单位现场负责人签名", "");
//        bookentity.put("出表日期", paramMap.get("sj"));
//        PdfFactoryHZ.create().setPdfout(buffer);//设置输出对象
//        PdfFactoryHZ.create().setTTFpath("/font/");//设置字体路径 相对路径可以自行测试
//        PdfFactoryHZ.create().open();//打开pdf写入流
//        PdfFactoryHZ.create().printerMaster(bookentity);//进行生成pdf流
//        PdfFactoryHZ.create().closeOnMainThread(new IPdfBack() {//close为保存操作 以下是生成回调
//            @Override
//            public void writeError() {
//            }
//
//            @Override
//            public void writeStart() {
//            }
//
//            @Override
//            public void writeEnd() {
//                //---响应输出---- 这是普通的响应 可以改造成自己的主要就是将buffer写入到页面
//                try {
//                    final DataOutput output = new DataOutputStream(response.getOutputStream());
//                    byte[] bytes = buffer.toByteArray();
//                    response.setContentLength(bytes.length);
//                    for (int i = 0; i < bytes.length; i++) {
//                        output.writeByte(bytes[i]);
//                    }
//                    response.flushBuffer();
//                } catch (Exception e) {
//                    e.printStackTrace();
//                } finally {
//                    try {
//                        if (null != buffer){
//                            buffer.close();
//                        }
//                    } catch (Exception ex) {
//                        ex.printStackTrace();
//                    }
//                }
//            }
//        });
//    }
//
//    @RequestMapping("/pdfTest2")
//    public void pdfTest2(HttpServletRequest request1, HttpServletResponse response) throws Exception {
//        Map<String, String> request = new HashMap();
//        request.put("pcode", "pcode");
//        request.put("ycode", "ycode");
//        request.put("jcsjc", "jcsjc");
//        request.put("jcsjm", "jcsjm");
//        request.put("glj", "glj");
//        request.put("zf1", "zf1");
//        request.put("zf2", "zf2");
//        request.put("zfc1", "zfc1");
//        request.put("zfc2", "zfc2");
//        request.put("jcqk", "jcqk");
//
//        response.setContentType("application/pdf");
//        final ByteArrayOutputStream buffer = new ByteArrayOutputStream();
//        Base_Entity bookentity = new Entity_Book_2017_2();//统一一个打印实体
//        bookentity.put("安监检记", request.get("pcode"));
//        bookentity.put("字", request.get("ycode"));
//        bookentity.put("号", request.get("ncode"));
//        bookentity.put("被检查单位", request.get("bjcdw"));
//        bookentity.put("单位地址", request.get("dz"));
//        bookentity.put("单位法定代表人或负责人", request.get("fzr"));
//        bookentity.put("代表人职务", request.get("zw"));
//        bookentity.put("代表人联系电话", request.get("lxdh"));
//        bookentity.put("检查场所", request.get("jccs"));
//        bookentity.put("检查时间开始", request.get("jcsjc"));
//        bookentity.put("检查时间结束", request.get("jcsjm"));
//        bookentity.put("所属安全生产监督管理局", request.get("glj"));
//        bookentity.put("执法人员姓名1", request.get("zf1") + ",");
//        bookentity.put("执法人员姓名2", request.get("zf2"));
//        bookentity.put("执法人员证件号1", request.get("zfc1") + ",");
//        bookentity.put("执法人员证件号2", request.get("zfc2"));
//        bookentity.put("检查情况", request.get("jcqk"));
//        bookentity.put("检查人员签名1", "");
//        bookentity.put("检查人员签名2", "");
//        bookentity.put("被检查单位现场负责人签名", "");
//        bookentity.put("出表日期", request.get("sj"));
//        PdfFactoryHZ.create().setPdfout(buffer);//设置输出对象
//        PdfFactoryHZ.create().setTTFpath("/font/");//设置字体路径 相对路径可以自行测试
//        PdfFactoryHZ.create().open();//打开pdf写入流
//        PdfFactoryHZ.create().printerMaster(bookentity);//进行生成pdf流
//        PdfFactoryHZ.create().closeOnMainThread(new IPdfBack() {//close为保存操作 以下是生成回调
//            @Override
//            public void writeError() {
//
//            }
//
//            @Override
//            public void writeStart() {
//
//            }
//
//            @Override
//            public void writeEnd() {
//                //---响应输出---- 这是普通的响应 可以改造成自己的主要就是将buffer写入到页面
//                try {
//                    final DataOutput output =
//                            new DataOutputStream
//                                    (response.getOutputStream());
//                    byte[] bytes = buffer.toByteArray();
//                    response.setContentLength(bytes.length);
//                    for (int i = 0;
//                         i < bytes.length;
//                         i++) {
//                        output.writeByte(bytes[i]);
//                    }
//                    response.flushBuffer();
//                } catch (Exception e) {
//                    e.printStackTrace();
//                } finally {
//                    try {
//                        if (null != buffer) {
//                            buffer.close();
//                        }
//                    } catch (Exception ex) {
//                        ex.printStackTrace();
//                    }
//                }
//            }
//        });
//    }
//}
